草庐IT

TypeScript 对象

全部标签

javascript - 如何使用 lodash 从复杂的对象数组中获取值?

所以我从一个API中得到了这个相当复杂的数组,其中包含许多带有对象等的嵌套数组。它看起来像这样:publicdata:any[]=[{language:'Dutch',sources:[{source:'DeRedactie',channels:[{channel:'binnenland',value:false},{channel:'buitenland',value:false},{channel:'sport',value:false},{channel:'cultuurenmedia',value:false},{channel:'politiek',value:false},

javascript - 如何在不使用 JavaScript ES6 中的构造函数的情况下使用对象文字来创建类的实例?

我正在尝试学习JavaScriptES6,这是一种非常酷的语言,我认为我应该练习一下,但我做不到anexercise.那么如何使用对象字面量来复制一个类。例如类是:classPoint{constructor(x,y){this.x=x,this.y=y}add(other){returnnewPoint(this.x+other.x,this.y+other.y)}}我想在这里使用对象字面量来使输出为真。varfakePoint=YOUR_CODE_HEREconsole.log(fakePointinstanceofPoint) 最佳答案

javascript - gulp typescript 时出现 TypeError

执行Typescript转译时出现以下错误:TypeError:file.isSymbolicisnotafunctionatDestroyableTransform.normalize[as_transform](D:\project\node_modules\vinyl-fs\lib\dest\prepare.js:31:15)atDestroyableTransform.Transform._read(D:\project\node_modules\vinyl-fs\node_modules\readable-stream\lib\_stream_transform.js:182

javascript - 在 Javascript 中将字符串转换为对象

我在使用特定映射转换字符串时遇到问题。我要转换的字符串如下:输入$B$O$TT$O$$KK$$Z$HH$$U$PP$$QQ$U$Z$B$可以更好地理解为以下内容(非常接近HTML):$B$O$TT$O$$KK$$Z$HH$$U$PP$$QQ$U$Z$B$我的目标是将其转化为以下内容:预期结果{"v":"B","chld":[{"v":"O","chld":[{"v":"T"}]},{"v":"K"},{"v":"Z","chld":[{"v":"H"},{"v":"U","chld":[{"v":"P"},{"v":"Q"}]}]}]}这是我得到的地方:functiontransfor

javascript - 如何在 Flow 类型中指定一个空对象?

假设我有一个可以是JavaScript错误对象或空对象的变量,我如何在Flow中指定空对象?我在不同地方尝试过的一种可能性(例如here)看起来像这样:consterr:Error|{||}={};但这会产生以下流程错误:1:constexact:{||}={};^Cannotassignobjectliteralto`exact`becauseinexactobjectliteral[1]isincompatiblewithexactobjecttype[2].References:1:constexact:{||}={};^[1]1:constexact:{||}={};^[2]参

javascript - 混合构造函数并在 Javascript 代理对象上应用陷阱

我有一个类,我想对其应用代理,观察方法调用和构造函数调用:计算器.jsclassCalc{constructor(){}add(a,b){returna+b;}minus(a,b){returna-b;}}module.exports=Calc;index.jsconstCalculator=require('./src/Calculator');constCalculatorLogger={construct:function(target,args,newTarget){console.log('Objectinstantiated');returnnewtarget(...arg

javascript - 如果对象传播不是可迭代的,它如何工作?

我正在学习传播的新用途。我意识到objectspread是一个ES2018提案。它以下列方式在Node10.5中工作:constoldObj={name:"doug",age:34};constnewObj={...oldObj};console.log(newObj);//{name:'doug',age:34}传播的一个有趣用途是将可迭代对象转换为数组。它适用于map,例如,为您提供一组值对数组constmappie=newMap().set("name","doug").set("age",234).set("profession","seekerofCthulhu");cons

javascript - 是否有任何 Typescript 表达式 `A` 使得 `A` 的真实性与 `!!A` 不同?

在Javascript中,几乎所有表达式(所有表达式?)都有一个“真实性”值。如果您将表达式放在需要bool值的语句中,它将计算为bool值等价物。例如:leta='foo'if(a){console.log('aistruthy!');}//Willprint'aistruthy!'.在某些工作场所,通常会通过两次取反将这种情况下的表达式强制转换为实际的bool值:leta='foo'if(!!a){console.log('aistruthy!');}//Willprint'aistruthy!'.我的问题:这仅仅是风格问题吗?是否纯粹是为了与阅读代码的人交流,我们真正认识到a不是

javascript - TypeScript 有 NaN 类型吗?

这个问题在这里已经有了答案:Integer(literal)uniontype,withNaNasvalidreturnvalue(2个答案)关闭4年前。TypeScript是否有我可以为变量声明的NaN类型?例如,如果我要创建一个这样的变量:constnumber:number=parseInt('123',10);我可以把它改得更准确吗,像这样:constnumber:number|NaN=parseInt('123',10);基本上我想知道我是否可以将变量声明为NaN类型(不是未定义或null)。上面的代码片段在TypeScript中不起作用,我无法在TypeScript指南的基

javascript - Typescript 3 Angular 7 StopPropagation 和 PreventDefault 不起作用

我在一个div中有一个文本输入。单击输入应将其设置为焦点并停止div单击事件的冒泡。我在文本输入事件上尝试了stopPropagation和preventDefault但无济于事。控制台日志显示无论如何,divclick仍然执行。如何停止div点击事件的执行?//html//component@ViewChild('inputBox')inputBox:ElementRef;divClick(){console.log('clickinsidediv');}fireEvent(e){this.inputBox.nativeElement.focus();e.stopPropagatio